require('../src/utils/findX')
// 这是一个省市区的数据, 但是现在焦作市下面的区是空的, 通常这个数据是你组织好的数据, 用来展示的数据
let areas = [
  {
    value: 1,
    lable: '河南省',
    children: [
      {
        value: 11,
        lable: '焦作市',
        children: []
      }
    ]
  }
]
// 这是一个区, 需要添加到河南省的焦作市的children里面去, 通常这个数据是从接口取回来组织好的
let qu = [
  {
    value: 1101,
    lable: '祥云镇'
  }
]

// 第一种方法
// let jiaozuo = areas.find(item => item.value === 1).children.find(item => item.value === 11)

// jiaozuo.children = qu

// console.log(JSON.stringify(areas, null, 2))

// 第二种方法
// 这个方法的参数是一个数组, 数组里面装的每一级要查找的条件,
// 第一个条件是要在很多省里面查找河南省, 所以条件是 {value:1}, 假设河南省的id是1
// 第二个条件是要在河南省里找到children这个子级
// 第三个条件是在children这个列表里找到 焦作市, 所以条件是 {value:11}, 假设焦作市的id是11
// 通过这三个条件, 就可以找到焦作市了
let jiaozuo = areas.findX([{ value: 1 }, 'children', { value: 11 }])
console.log(JSON.stringify(jiaozuo, null, 2))
jiaozuo.children = qu
console.log(JSON.stringify(areas, null, 2))
